前面我們了解到目前主流的跨鏈技術主要有以下幾種類型,同時也認識了第一種跨鏈技術(公證人機制)。
1、公證人機制(Notary schemes)
2、側鏈/中繼(Sidechains/relays)
3、哈希鎖定(Hash-locking)
4、分佈式私鑰控制(Distributed private key control)
5、混合技術(公證人 + Sidechain)
今天我們繼續研究第二種跨鏈技術:
2、側鏈/中繼(Sidechains/relays)
側鏈機制是指相對於主鏈而言,主鏈並不知道側鏈的存在,而側鏈能夠驗證和解析主鏈中的區塊數據和帳本數據。
側鏈主要實現的技術基礎是通過雙向錨定(Two-way Peg)將數位資產在主鏈上進行鎖定,當側鏈驗證主鏈提供的鎖定交易證明之後,同時將相等的對應資產在側鏈中自動釋放。而事實上資產並未真正實現轉移,只是當資產在主鏈上鎖定時,相等的資產在側鏈上被釋放。相反當側鏈中相關資產進行鎖定時,主鏈上錨定的相等資產也可以被釋放。
側鏈協議的設計難度在於如何讓資產在主鏈和側鏈之間安全的流通移轉,即接收方必須確保發送方的鏈上資產被可靠的鎖定。因此根據驗證方式的不同,可分為(a)託管模式、(b)驅動鏈模式、(c)SPV 模式,三種模式也不一定單獨使用,可以在主鏈、側鏈使用不同錨定技術的混合模式。
(a)託管模式,類似於跨鏈技術的公證人機制,即通過可信第三方確保公平交易。依據可信第三方的數量具體可分為單一託管模式、聯盟模式。單一託管模式是指將數位資產發送到一個主鏈單一託管方(類似於交易所),當單一託管方收到相關信息後,就在側鏈上激活相應數字資產;而聯盟模式為緩解單一託管模式的過度中心化問題,選取一個可信團體作為公證人,對來往交易信息進行確認,並將驗證結果發送給接受方,但是這並沒有從根本上解決中心化問題,側鏈安全仍然取決於公證人的誠實度。
(b)驅動鏈模式,類似於託管模式,但是其公證人限定於鏈上的礦工,由礦工監管被鎖定的數位資產。礦工全體投票表決交易資訊的正確與否,系統的安全性完全依賴於礦工在公證時的參與度和可信度。而且一般側鏈剛創建時,主鏈上的礦工加入側鏈的比例很小,很容易導致權益攻擊,嚴重危害區塊鏈安全。
(c)SPV 模式,即簡單支付驗證技術,主要原理就是驗證交易已成功上鏈,並且在包含該交易區塊的後面有足夠數量的區塊。具體而言,SPV 是鏈 A 上的交易發送者將資產發送到一個特殊的地址,從而將資產鎖定。這筆交易的 SPV 證明隨後會被發送到鏈 B,鏈 B 上的礦工驗證 SPV 通過後,便會於鏈 B 上解鎖相等的對應資產。
而中繼鏈(Relays)則是側鏈和公證人機制的結合,中繼鏈具有訪問需要和驗證進行相互操作的鏈上關鍵資訊,並對兩條鏈的跨鏈資訊進行串接。從這個角度看中繼鏈也是一種去中心的公證人機制,是更為直覺的實現相互操作性的方式,即不完全依賴於可信第三方的驗證判斷,僅通過中間人收集兩條鏈的數據狀態進行鏈內讀取並進行自我驗證,其驗證方式依據自身結構不同存在顯著差異。而這裡的中間人僅僅充當中繼橋樑的作用,負責數據收集工作。
無論是側鏈還是中繼,最基本的需求就是需要採集原鏈的信息。側鏈與中繼的區別在於:
從屬關係上側鏈錨定從屬於主鏈,是主鏈與附屬鏈之間去信任交互的方案,且被限定在主鏈與側鏈之間,更多著眼於可拓展性而非可伸縮性,而中繼採用了中心輻射設計,不從屬於某條主鏈,更像是"調度中心",只負責數據傳遞,不負責鏈維護;執行過程看,側鏈需要同步所有的區塊頭,驗證網絡是否認可該項交易,中繼不需要下載所有的區塊頭,因此擁有更優越的速度;此外,安全性方面,側鏈的安全性是建立在側鏈能有效激勵礦工進行一致性驗證交易,主鏈的安全性無法在側鏈上起作用,而中繼是由主鏈自行驗證,安全性有一定保證。
代表項目:BTC Relay,Polkadot,Cosmos
2016年5月,ConsenSys 團隊正式推出 BTC Relay,被認為是首個側鏈項目。BTC Relay 錨定的是比特幣系統,通過使用以太坊的智能合約功能允許用戶在以太坊上驗證比特幣交易,實現以太坊和比特幣網絡相連互通。
BTC Relay 首次引入了區塊鏈側鏈概念,嘗試跨區塊鏈通信,打開了鏈與鏈之間的通道。這種跨鏈的實現方式簡單,但是 BTC Relay 需要額外的信任和維護成本,且智能合約內部的數據存儲會有體積膨脹的問題。而且並未完成完整的中繼跨鏈技術,只是通過智能合約主動請求比特幣原鏈系統進行信息驗證,而不是通過側鏈中繼而來。
2017年,Gavin Wood 發起的 Polkadot 為典型的採用跨鏈中繼機制,其目標就在於建立一種異構的多鏈架構,通過中繼鏈(relay-chain)鏈接現存所有的區塊鏈,包括各種公有網絡、私有網絡或聯盟網絡。Polkadot 區塊鏈的整體架構圖如上圖所示,主要包含三種角色鏈和四種參與方。
Cosmos 也是一個多鏈混合的區塊鏈中繼機制,如上圖所示,主要包括兩種角色:
Hub:用於處理跨鏈交互的中繼鏈。
Zone:Cosmos 中的平行鏈。
為了支持平行鏈之間的跨鏈互操作,Cosmos 提出了一種跨鏈交互協議 IBC (Inter-Blockchain Communication protocol), 並利用 Tendermint 共識算法的即時確定性實現多個異構鏈之間的價值和數據傳輸。
接下來的三十天內,就讓我們一起跟著小明的團隊一起學習最新的兩大跨鏈技術之一:Polkadot Substrate。
Substrate 開發者資源:
https://substrate.dev
Polkadot 官網:
https://polkadot.network
BDE 社群小聚錄影:
https://bitlly.co/ogvpb
想找區塊鏈人才或想學習區塊鏈知識的夥伴。歡迎參加社群小聚,一起來輕鬆交流、互相學習成長、認識新朋友、發現新機會!
台北區塊鏈社群
https://bitlly.co/Q4dIK
台北波可道社群
https://bitlly.co/XgVTz
BDE 區塊鏈學院 - 讓每個企業都懂區塊鏈。
https://bitlly.co/mbDwX
藉著親自並協助他人進行軟體開發,
我們正致力於發掘更優良的軟體開發方法。
透過這樣的努力,我們已建立以下價值觀:
個人與互動 重於 流程與工具
可用的軟體 重於 詳盡的文件
與客戶合作 重於 合約協商
回應變化 重於 遵循計劃
也就是說,雖然右側項目有其價值,
但我們更重視左側項目。